package Day_0225.SpringAOP;

/**
 * @author zxc
 * @date 2023/02/25 19:54
 **/
public class Aspect {
    public static void main(String[] args) {
        /**
         * 谈一谈对于切面（Aspect）的理解
         * ===》
         * 1.aspect 由 point cut（切入点，即在应用执行过程中能够插入切面的点;） 和 advice（通知，即切面的行为）组成;
         * （1）切面是通知和切点的结合。
         * （2）既包含了横切逻辑的定义, 也包括了连接点的定义.
         *  Spring AOP 就是负责实施切面的框架, 它将切面所定义的横切逻辑（Advice） 编织到 切面所指定的连接点（PointCount）中;
         *
         * 2.AOP 的工作重心在于如何将通知（Advice）编织目标对象（Target Object）的连接点（Point cut）上, 这里包含两个工作:
         * （1）如何通过 pointcut 和 advice 定位到特定的 join point 上
         * （2）如何在 advice 中编写切面代码.
         * ===》
         * 可以简单地认为, 使用 @Aspect 注解的类就是切面.
         *
         * 3.切面（Aspect） == 切入点（Point Cut） + 通知（Advice）;
         * （1）通知 ：Advice，即切面定义的横切逻辑;
         * （2）切入点 ：Point Cut，即目标对象中的连接点;
         *
         */
    }
}
